Unified greetings for social media

ABSTRACT

A unified greeting system scans social media for content. The content can be any type of post to a social media site. If content is directed to a user of the unified greeting system and if the user is currently unavailable, the unified greeting system determines if the content requires a reply. If a reply is warranted, the unified greeting system determines the characteristics of the content to determine the type of reply. Then, the unified greeting system provides the reply, which can be an “out-of-office message.” The out-of-office message is the posted to the social media site to alert the poster that the person is currently unavailable.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of and priority under 35 U.S.C.§119(e) to U.S. Patent Application No. 61/235,838, filed Aug. 21, 2009,entitled “MOJO,” which is incorporated herein by reference in itsentirety.

BACKGROUND

A well known problem exists with regard to message greetings. One has toindividually administer greetings for each message type, e.g., voicerecordings for voice greetings and text for email, Instant Messaging,etc. This problem is worsened by the fact that some users change theirgreeting to customize the greeting for the day and date. Further,messages that show the user as busy or out of the office can further addtime to the process. Out-of-Office greetings are also typicallycustomized to include dates of absence, date of return, etc. Inaddition, there may be company policies to enforce regarding the contentfor such greetings. Exacerbating these problems is the popularity ofparticipation in blogs, micro-blogs, social networks, and other socialmedia and the inability to extend greetings outside of the current voiceand email paradigms.

Specifically, there is no way currently to extend calendar information,greetings, and/or Out-of-Office information to certain types of socialnetworks. Some of these social media are passive, e.g., they require theuser to navigate a browser and/or login to a service. Anothercharacteristic of these passive social networks are that a user will notnecessarily receive specific communications other than RSS feeds fromsocial networks. Examples of these passive social networks arediscussion groups, message boards, online selling venues (e.g., eBay.Craig's List, and the like), etc. This passivity creates a problem ofhow to respond to a request for participation or discussion when theuser is unavailable to navigate to the site, unavailable to read thecontent or the RSS feed of the content. Another class of social media isactive, where information comes in from the sender because the receiverhas subscribed to the content. Examples of such active social media areMySpace, LinkedIn, etc.

There is an additional problem of how much information that the userwants to share with the person(s) requesting their communication and inwhat form to best share the information. The fact that many of thesevenues are public means that the user has the additional problem ofposting for public consumption any replay message. Still another problemis the coordination of responses through an ever increasing number ofmedia and venues. For example, if one responded to an email query withan Out of Office assistant, a social network response to the same personwould be redundant and usurp bandwidth from the party receivingredundant Out of Office notices. When a party, in which a personfrequently communicates, is out of the office, the multipleout-of-office messages can be distracting and cost a great deal ofbandwidth across a large enterprise.

SUMMARY

It is with respect to the above issues and other problems that theembodiments presented herein were contemplated. Embodiments present asystem for scanning social media for content. The content can be anytype of post to a social media site. If content is directed to a user ofthe system, the system determines if the content requires a reply. If areply is warranted, the system determines the characteristics of thecontent to determine the type of reply. A unified greeting systemprovides the reply, which can be an out-of-office message. The messageis the posted to the social media site to alert the poster that theperson is currently unavailable.

The embodiments presented herein extend greetings capabilities andtailor those capabilities to active and passive social media. Oneimprovement is to implement a web robot (referred to as a “bot”) or awizard (e.g., a software application) for passive social media. The botcan periodically browse or navigate to the social networks and/or screenRSS feeds and filter content, based on name and/or keyword searches, fora request for communications. If the bot detects such a request, the botcan determine the venue (e.g., Facebook, LinkedIn, Twitter, EBay,Craig's List, etc.). The bot may also determine the requesting party,the trust basis with the requesting party, the degrees of separationfrom the requesting party, or other information about the content. Basedon rules that the owner of the bot has configured and the otherinformation defined above, a messaging system can respond on the socialmedia or alternatively via a private email, instant message (IM), orthrough other communication media.

The bot may be located advantageously on the user's device or computerand/or could be running on a server when such user's device or PC is notavailable. The bot can be programmed and/or may implement forms ofmachine learning over time based on the behaviors of the user when theuser is available to respond personally. The messaging system may pullthe basis of a response from a calendar, may pull a pre-configuredresponse set up by the user and/or the system, may pull a response fromvarious greetings or an Out of Office indication, or may pull otherinformation. Further, the messaging system can filter the basis of theresponse based on various information.

Another improvement extends the information about trusted contacts andun-trusted contacts and resolves communication requests by determininginformation like degrees of separation for social networks, the topic ofa communication, relationship within an organization, or the like. Themessaging system can respond by appropriately limiting the scope of theinformation provided based on these and other factors. Based on thevenue, the information requested, and other such factors, the messagingsystem may add, delete, or change portions of greetings, certaincalendar entries, or other information to a level appropriate to thosefactors.

The embodiments presented herein may also have the ability to escalateautomatically the notification to a user to send a notification to amobility application when certain content, requesting parties, keywords,and/or requests are detected. Thus, the system can escalate responsesbased on communications requests from social media.

Finally, the system can coordinate responses so that if party Afrequently contacts party B and party A has already received notice somenumber of times that party B is unavailable and cannot respond, thesystem can suppress at least one response. The coordination of responsecan include limiting the responses to a specific number of responsessent over a single media and/or to a predetermined number of responsesacross two or more forms of media. The rules of the coordination can bespecified by the user.

The phrases “at least one”, “one or more”, and “and/or” are open-endedexpressions that are both conjunctive and disjunctive in operation. Forexample, each of the expressions “at least one of A, B and C”, “at leastone of A, B, or C”, “one or more of A, B, and C”, “one or more of A, B,or C” and “A, B, and/or C” means A alone, B alone, C alone, A and Btogether, A and C together, B and C together, or A, B and C together.

The term “stalking” means the process of determining a person ispresently using a social media network and can be contacted on thatsocial media network in real time.

The term “a” or “an” entity refers to one or more of that entity. Assuch, the terms “a” (or “an”), “one or more” and “at least one” can beused interchangeably herein. It is also to be noted that the terms“comprising”, “including”, and “having” can be used interchangeably.

The term “automatic” and variations thereof, as used herein, refers toany process or operation done without material human input when theprocess or operation is performed. However, a process or operation canbe automatic, even though performance of the process or operation usesmaterial or immaterial human input, if the input is received beforeperformance of the process or operation. Human input is deemed to bematerial if such input influences how the process or operation will beperformed. Human input that consents to the performance of the processor operation is not deemed to be “material”.

The term “computer-readable medium” as used herein refers to anytangible storage that participates in providing instructions to aprocessor for execution. Such a medium may take many forms, includingbut not limited to, non-volatile media, volatile media, and transmissionmedia. Non-volatile media includes, for example, NVRAM, or magnetic oroptical disks. Volatile media includes dynamic memory, such as mainmemory. Common forms of computer-readable media include, for example, afloppy disk, a flexible disk, hard disk, magnetic tape, or any othermagnetic medium, magneto-optical medium, a CD-ROM, any other opticalmedium, punch cards, paper tape, any other physical medium with patternsof holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, a solid state mediumlike a memory card, any other memory chip or cartridge, or any othermedium from which a computer can read. When the computer-readable mediais configured as a database, it is to be understood that the databasemay be any type of database, such as relational, hierarchical,object-oriented, and/or the like. Accordingly, the invention isconsidered to include a tangible storage medium and prior art-recognizedequivalents and successor media, in which the software implementationsof the present invention are stored.

The terms “determine”, “calculate”, and “compute,” and variationsthereof, as used herein, are used interchangeably and include any typeof methodology, process, mathematical operation or technique.

The term “module” as used herein refers to any known or later developedhardware, software, firmware, artificial intelligence, fuzzy logic, orcombination of hardware and software that is capable of performing thefunctionality associated with that element. Also, while the embodimentsare described in terms of several examples, it should be appreciatedthat individual aspects can be separately claimed.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure is described in conjunction with the appendedfigures:

FIG. 1A is a block diagram of an embodiment of a communication systemoperable to automatically respond to content provided by persons usingsocial media networks;

FIG. 1B is a block diagram of an embodiment of a messaging systemoperable to automatically respond to content provided by persons usingsocial media networks;

FIG. 2 is a block diagram of an embodiment of a social media gateway;

FIG. 3 is a flow diagram of an embodiment of a process for creating agreeting for social media posts;

FIG. 4 is a flow diagram of an embodiment of a process for send agreeting to a social media site in response to a message;

FIG. 5 is an embodiment of a user interface to create a greeting;

FIG. 6 is an embodiment of a user interface to manage greetings forsocial media;

FIG. 7 is a block diagram of an embodiment of a computing environment;

FIG. 8 is a block diagram of an embodiment of a computing system.

In the appended figures, similar components and/or features may have thesame reference label. Further, various components of the same type maybe distinguished by following the reference label by a letter thatdistinguishes among the similar components. If only the first referencelabel is used in the specification, the description is applicable to anyone of the similar components having the same first reference labelirrespective of the second reference label.

DETAILED DESCRIPTION

The ensuing description provides embodiments only, and is not intendedto limit the scope, applicability, or configuration of the claims.Rather, the ensuing description will provide those skilled in the artwith an enabling description for implementing the embodiments. It beingunderstood that various changes may be made in the function andarrangement of elements without departing from the spirit and scope ofthe appended claims.

A communication system 101, for interacting with persons using socialmedia is shown in FIG. 1. The communication system 101 can include aenterprise network 100, a network 104, and one or more types of socialmedia networks or systems, such as social media network 1 108 a, socialmedia network 2 108 b, and social media network 3 108 c. Social medianetworks 1 108 a, 2 108 b, and/or 3 108 c can be any social mediaincluding, but not limited to, networks, websites, blogs, RSS feeds,micro blogs, or computer enabled systems. For example, a social medianetwork may be MySpace, Facebook, Twitter, Linked-In, Spoke, or othersimilar computer enabled systems or websites. The communication system101 can communicate with more or fewer social media networks 108 a, 108b, and/or 108 c than those shown FIG. 1, as represented by ellipses 118.

The network 104 can be any network or system operable to allowcommunication between the enterprise network 100 and the one or moresocial media networks 108 a, 108 b, and/or 108 c. The network 104 canrepresent any communication system, whether wired or wireless, using anyprotocol and/or format. The network 104 provides communicationcapability for the enterprise network 100 to communicate with sitescorresponding to the one or more social media networks 108 a, 108 b,and/or 108 c. However, the network 104 can represent two or morenetworks, where each network is a different communication system usingdifferent communication protocols and/or formats and/or differenthardware and software. For example, network 104 can be a wide areanetwork, local area network, the Internet, a cellular telephone network,or some other type of communication system. The network may be asdescribed in conjunction with FIGS. 7 and 8.

An enterprise network 100 can be a system that can communicate with oneor more persons that use social media networking sites. The enterprisenetwork 100 can be hardware, software, or a combination of hardware andsoftware. The enterprise network 100 can be executed by one or moreservers or computer systems, as described in conjunction with FIGS. 7and 8. The enterprise network 100 can include all systems, whetherhardware or software, that allow the enterprise network 100 to receive,service, and respond to social media contacts. An embodiment of theenterprise network 100 is described in conjunction with FIG. 1B.

The enterprise network 100 may include a messaging system 112 and asocial media gateway 150. While the messaging system 112 and the socialmedia gateway 150 are shown as being a part of the contact system 102,in other embodiments, the messaging system 112 and/or the social mediagateway 150 are separate systems or functions executed separately fromthe enterprise network 100 and/or executed by a third party. Themessaging system 112 may process and receive messages. The social mediagateway 150 can receive and translate messages from the one or moresocial media networks 108 a, 108 b, and/or 108 c. An embodiment of themessaging system 112 is described in conjunction with FIG. 1B. Anembodiment of the social media gateway 150 is described in conjunctionwith FIG. 2.

The enterprise network 100 may also communicate with one or morecommunication devices 110. The communication devices 110 can represent auser's cell phone, email system, personal digital assistant, laptopcomputer, or other device that allows the enterprise network 100 tointeract with the customer. The enterprise network 100 can modify anon-direct contact, from a social media network 108 a, 108 b, and/or 108c, into a directed contact by sending a response message directly to acustomer's communication device 110.

FIG. 1B depicts an architecture for an embodiment of an enterprisenetwork 100. The enterprise network 100 is in communication, via anetwork, e.g., a Wide Area Network or WAN 104, with one or more socialmedia sites 108. The enterprise network 100 includes a messaging system112 in communication, via Local Area Network 116, with a gateway 150,Text-To-Speech or TTS conversion engine 154, voice messaging server 158,e-mail server 162, instant messaging server 166, user database 120 and aplurality of user client devices 124 a-n.

The WAN 104 may be a packet-switched network, such as the Internet,using the TCP/IP suite of protocols or a circuit-switched network, suchas the Public Switched Telephone Network or PSTN or a wireless cellularservices network, and LAN 116 is commonly a packet-switched networkusing an Ethernet protocol. As will be appreciated, other protocols maybe employed depending on the application.

The social media gateway 150 is described in conjunction with FIG. 2.The TTS conversion engine 154 converts text into corresponding speechand is conventional. The user database 120 includes user information,such as user identities, electronic addresses, scheduling information(e.g., calendars), task lists, contact management information andpreferences, public folders, social media aliases, social media logoncredentials, lists of subscriptions to active and passive social media,and organization and areas of responsibility.

The enterprise network 100 includes a number of messaging servers. Thevoice messaging server 158 receives content or other information fromcallers, stores, manages, and provides information to users' voicemessages. The e-mail server 162 receives, stores, administers, andprovides e-mail to users. Each user has a message box containing theirstored messages. Instant messaging server 166 receives and provides tothe user instant messages. In one configuration, two or more of themessaging servers are integrated, as in the case of Modular Messaging™by Avaya, Inc.

The messaging system 112 includes a number of computational modules,specifically the calendar module 128 which receives and executesscheduling requests and updates and meeting invitations from a user, agreeting manager 144 which interfaces with users to receive and store,as part of one or more calendar entries, customized greetings, greetingselection agent 136 that receives contacts, selects an appropriatedefault or customized greeting, and provides the selected greeting tothe contactor, and unable-to-contact Application Program Interface orAPI 140 that processes Structured Query Language or SQL database queriesreceived from the foregoing components. In alternative embodiments, thegreeting manager 144 may employ a machine learning ability to determinehow a user responds to social media content. The machine learningability may help tailor the greeting managers 144 formation of greetingsand management of greetings.

The calendar module 128 is conventional.

The customized greeting, which is stored as part of one or more calendarentries, is commonly played, via TTS conversion engine 154, to callersas a voice equivalent or transmitted to text message senders (whichincludes all form of text messages including e-mails, instant messages,social media posts, etc.) as a text equivalent to what is stored as thecustomized greeting. The greeting is provided to contactors, in the formin which it is stored, while the calendar entry is current, or active.

There is no need for the user to enable or disable the greeting. Whenthe calendar entry is current (or is active), the greeting is providedautomatically to contactors. When the calendar entry is no longercurrent (or is inactive), the greeting is no longer providedautomatically to contactors.

The greeting, as stored, may be supplemented when provided to acontactor. For example, a default prologue, such as “Hi! This is X”,and/or an epilogue, such as “Please leave a message after the beep” or“Thanks you and have a nice day”), that is not part of the customizedgreeting as stored, may be provided before or after, respectively, thecustomized greeting.

The greeting manager 144 administers the customized greeting for anyentry on the electronic calendar. This would allow the user to customizethe greeting, for each calendar entry. It also permits the user to setup the customized greeting at the time that the calendar entry is addedor otherwise entered. As noted, the customized greeting can be sent inan email, played as a voice greeting, posted as a reply to social mediacontent or post, or used as an instant messaging response.

An embodiment of the social media gateway 150 is shown in FIG. 2. Inembodiments, the social media gateway 150 functions as a bot to find andresponds to social media content. The social media gateway 150 caninclude one or more components which may include hardware, software, orcombination of hardware and software. The social media gateway 150 canbe executed by a computer system such as those described in conjunctionwith FIGS. 7 and 8. However, in other embodiments, the componentsdescribed in conjunction with FIG. 2 are logic circuits or otherspecially-designed hardware that are embodied in a field programmablegate array (FPGA).

Herein, the social media gateway 150 can include one or more contentfilters 202 a, 202 b, and/or 202 c. A content filter 202 can receive allof the messages for the enterprise network 100 from a social medianetwork 108 a, 108 b, and/or 108 c and eliminate or delete thosemessages that do not require a response. For example, a message on aFacebook page that does not request a response from the user may notneed a response. As such, the content filter 202 can filter out ordelete that non-suitable message from the messages that are received bysocial media network application programming interface (API) 1 204 a,social media network API 2 204 b, and/or social media network API 3 204c. With the content filter 202, the social media network API 204 onlyneeds to translate those messages that should be received by themessaging system 112. Translation typically requires the conversion ofthe message into a different format.

The content filter 202 is provided with one or more heuristics or filterrules from a filter database (not shown). These filter rules can becreated by the user or an administrator of the communication system 101.Thus, the user or administrator of the communication system 101 cancustomize the filtering of messages from social media networks 108 a,108 b, and/or 108 c. Further, different rules may be applied todifferent social media networks, as some social media networks may havedifferent types of messages or postings than other types of social medianetworks. The filtering may include filters based on the poster ofsocial media content, keywords in the content, or other information.

While the content filter 202 is shown as part of the social mediagateway 106, it is to be appreciated that the content filter 202 may bea part of the social media network API 204. The content filter 202 maycorrespond to the query terms used by the social media network API 204.The content filter 202 or query terms are an argument to the socialmedia network API 204 call. The social media network API 204 can be anapplication that the social media network 108 a, 108 b, and/or 108 cprovides to access the site. Thus, the social media network API 204 iscalled and connects the social media gateway 150 to the social medianetwork 108 a, 108 b, and/or 108 c. Any suitable filter criteria may beemployed. Examples include content of source, address field, destinationor recipient address fields, time stamp field, subject matter field, andmessage body field. For example, searchable content is the name of theperson for which an automated response would be sent.

The social media gateway 150 can include one or more social medianetwork API 204. As shown in FIG. 2, the social media gateway 150 mayinclude a social media network API 204 for each social media network 108a, 108 b, and/or 108 c. As such, the social media gateway 150 caninteract with each social media network 108 a, 108 b, and/or 108 c inthe particular (often unique) format or protocol used by the socialmedia network 108 a, 108 b, and/or 108 c. Further, when new social medianetworks are created, the social media gateway 150 can easily beexpanded to interact with those social media networks by adding anothersocial media network API 204. Where social media networks 108 a are morestandardized, or use substantially similar formats or protocols, asingle social media network API can be shared by multiple such socialmedia networks 108 a-108 c.

The social media network API 204 can receive messages from and sendmessages to the social media network 108 a, 108 b, and/or 108 c. Inembodiments, the social media network API 204 may periodically search(e.g., once an hour, day, week, etc.) active social media for messagesand automatically receive messages from passive social media. The socialmedia network API 204 can translate a message received from a socialmedia network 108 a, 108 b, and/or 108 c and send the translated messageto a message filter 206. The social media network API 204 can translatethe received message into a standard formatted file. For example, thetranslated message may be represented by an extensible mark-up language(XML) file or other file having a general format. As such, each specificand particular social media network message can be translated into astandard format for use by the messaging system 112. Further, the socialmedia network API 204 can receive a generally or standard formatresponse message, from the messaging system 112, and translate thatresponse into a particularly or specifically formatted response messagethat can be posted to the corresponding social media network 108 a, 108b, and/or 108 c.

Messages to the user are addressed to the user. For example, a personmay become a “friend” of the user on a social media network 108 b, suchas Facebook. The customer may then address a message to the user onFacebook. This non-direct contact is a message that is not sent directlyto the user but to the user's Facebook page. In other embodiments, theenterprise network 100 receives messages not addressed to the user. Forexample, the user can receive tweets from Twitter that are “broadcast”rather than addressed to the user. The enterprise network 100 may alsosearch for messages or content on the social media network 108 a, 108 b,and/or 108 c. Exemplary search criteria include the user's name, user'shome address, user's business address, user's employer name, user'seducational or professional background, user's hobby, personal orbusiness interests, user's family profile, and the like. Thus, thesocial media gateway 150 of the enterprise network 100 can query,gather, or connect to a live feed of data from a social media network108 a, 108 b, and/or 108 c and then apply a filter to the indirectinformation.

The translated messages from the social media network API 204 can bereceived by a message filter 206. A message filter 206 can perform someor all of the functions of the content filter 202 and eliminate messagesbefore being sent to the messaging system 112. Thus, the messagingsystem 112 receives a message where some of the content of the messagehas been deleted. The message filter 206 can retrieve heuristics orfilter rules from a filter database (not shown), similar to the contentfilter 202. A substantial difference between the content and messagefilters 202 and 206 is that the content filter 202 is specific to aparticular message format associated with a corresponding social medianetwork 108 a-108 c, while the message filter 206 is applied to astandardized or universal format and is therefore common to multiplesocial media networks 108 a-108 c. One skilled in the art willunderstand the type of rules that may be used to filter information frommessages such that only pertinent questions, facts, requests, orinformation is sent to the messaging system 112.

A message aggregator 208 may also be included with the social mediagateway 150. A message aggregator 208 can, in contrast to the messagefilter 206, combine two or more messages into a packet or grouping thatis sent to the messaging system 112. Therefore, the message aggregator208 can inter-relate or combine messages based on different informationwithin the messages. For example, two messages may be combined based onany of the message fields referenced above, such as the person thatposted the message, the subject, the request or question asked, theperson the message was sent to, or other information that may bepertinent to the messaging system 112. Thus, the messaging system 112may be able to respond concurrently to two or more messages based on agrouping provided by the message aggregator 208. If the messages areaggregated or not aggregated, each message can be sent from the socialmedia gateway 150 to the messaging system 112.

The social media gateway 150 can also send responses back to the socialmedia networks 108 a, 108 b, and/or 108 c. A response from the messagingsystem 112 can be sent to the social media gateway 150. The response maybe in a general format and translated. The translated response may thenbe posted to the appropriate social media network 108 a, 108 b, and/or108 c by the social media gateway 106. In other embodiments, themessaging system 112 may post the response directly to the social medianetwork 108 a, 108 b, and/or 108 c without sending the response to thesocial media gateway 150.

It should be noted that the modules, components, and/or systems that aredescribed as executing on the enterprise network 100 may also execute ina user device. Thus, the user's device can manage messaging to socialmedia postings. In other embodiments, the modules, components, and/orsystems that are described as executing on the enterprise network 100may execute on a server for two or more users of an enterprise or in thecloud as a service for two or more users.

An embodiment of a process or method 300 shows the operation of thegreeting manager 133 in FIG. 3. Generally, the method 300 begins with astart operation 302 and terminates with an end operation 318. While ageneral order for the steps of the method 300 are shown in FIG. 3, themethod 300 can include more or fewer steps or arrange the order of thesteps differently than those shown in FIG. 3. The method 300 can beexecuted as a set of computer-executable instructions executed by acomputer system and encoded or stored on a computer readable medium.Hereinafter, the method 300 shall be explained with reference to thesystems, components, modules, software, data structures, etc. describedin conjunction with FIGS. 1-2 and 5-6.

The process 300 starts when a calendar entry is created or edited.Referring to FIG. 5, a screen shot 500 of a calendar module 128 displayis depicted. The window is shown as it is displayed for a user creatinga new or editing an old calendar entry. The subject of the meeting is“Meeting with John Smith” of Acme Corporation, the location “1500 ParkAvenue Suite 1000”, the start time “9 AM on Wednesday May 31, 2010”, andend time “11:30 AM Wednesday May 31”. The description of the meeting isshown in user-entry box 504. A customized greeting option 508 permitsthe user, by checking the “Yes” icon 512, to enter a customized greetingfor contactors during the time scheduled for the meeting (i.e., 9 to11:30 AM on May 31, 2010).

Referring now to FIG. 3, when a calendar entry is created, the greetingmanager 144 determines, in step 302, whether the user desires to enter acustomized greeting. Referring to FIG. 5, the greeting manager 144 knowsthat the user desires to enter a customized greeting when the userclicks on the icon 512. If the user desires to enter a customizedgreeting, step 302 proceeds YES to step 304. If the user does not desireto enter a customized greeting, step 302 proceeds NO to return to step302 to await a new greeting.

In response to clicking on the icon 512, the greetings manager 144, inoptional step 304, can apply rules or templates to generate a set ofproposed greetings for consideration by the user. The rules or templatescan themselves be configured by the user. In one configuration, the usercan specify, when the entry is created, a type of calendar entry, e.g.,an out-of-office meeting entry, an in-the-office meeting entry, atelephone-conference entry, a vacation entry, and an outside-of-businesshours entry, that is used for selecting an appropriate set of proposedcustomized greetings for consideration by the user. When a customizedgreeting is created by the user, the user can indicate whether or not tohave the greeting used as a proposed customized greeting for the type ofcalendar entry for which the greeting was created. In that event, theuser can specify fields in the message to be populated automatically byinformation in future calendar entries of the same type.

The greetings manager 144, in step 308, provides the display of FIG. 6,which may be a child window 600 of the window 500, to the user. Thewindow 600 includes the following fields: use greeting for internalcalls 604 (or calls from other users), use greeting for external calls608 (or calls from non-users), use greeting for internal emails 612 (oremails from other users), use greeting for Facebook messages (or socialmedia content directed to the user on the user's Facebook page), usegreeting for Twitter messages (or social media content directed to theuser on Twitter), all of the above 624, use greeting for designatedusers 628, and the box 632 for receiving the customized greeting fromthe user. Fields 604-624 permit the greeting to be used for specifiedmodalities of communication. The fields for the communication modalitiesare not limited to those examples shown in FIG. 6. Other modalities caninclude at least one of, but are not limited to, a MySpace field, aLinkedIn field, a blog field, a micro blog field, a Spoke field, aYouTube field, etc. Thus, the user can tailor greetings for differenttypes of social media.

Field 628 permits the greeting to be used for specified sets ofcontactors. For example, the user may provide contact information, suchas a private cell phone number, for a family member or businessacquaintance. Field 628 or another field may also provide selectionsthat relate to responses for social media. For example, selections canbe related to one or more of, but are not limited to, the person postinga social media message that requires a response, the degrees ofseparation of the poster (e.g., degrees of separation is a function inLinkedIn), the content of the posting, the nature of the venue (e.g.,private media, public media, semi-private media, etc.), a trust levelfor the poster, the relationship of the poster with a third party (e.g.,an employee of an enterprise, a customer of an enterprise. etc.), etc.As will be appreciated, the box-type fields 604, 608, 612, 616, 620, and624 could be implemented as a multiple selectable pull-down menu thatcould list the depicted and additional contact types.

In other embodiments, the user may also be able to select whether acertain type of social media response should be sent by othercommunication media other than posting on the social media site. Forexample, a response may not be posted on a public forum. Rather,information about a poster may be found in a database. The informationcan include an email address or an instant message alias. Thus, thegreetings manager 144 can direct the response message to the poster'semail or instant messaging alias rather than post the response on thepublic social media site.

In other alternatives, the greeting may be changed based on the presenceof the user. Thus, the messaging system 112 can receive presenceinformation (e.g., physical location information derived from actualdetermination of the user's location, such as through GPS measurementsof the user's phone, or from other information, a logon onto acomputer). This presence information can be used to determine whetherthe user may be available, e.g., the user is in their office. Thegreeting may change based on the presence of the user. The user may beable to select this option in the user interface 600.

Alternatively or additionally, a field (not shown) could be provided forcontactors for whom the greeting is not to be used. The greeting box 632contains the user selected or entered greeting “I will be in a salesmeeting all morning”. As can be seen in FIG. 6, the user may select the“recurrence icon” 636, which causes the selected or entered greeting tobe used for multiple calendar entries (which are generated by selectingthe recurrence icon 516 of FIG. 5). As will be appreciated, a recurringmeeting is a meeting that occurs with a selected frequency orperiodicity over time.

In step 312, the greetings manager 144, when the save and close commandis received, stores the greeting and related information itself or apointer to the storage location of the greeting and related informationin the pertinent calendar entry or entries. In the latter case, apointer to the relevant calendar entries may be stored at the storagelocation of the greeting and related information.

In decision diamond 316, the greetings manager 144 determines whetherthe user has activated the “enter further greetings” icon 640 in FIG. 6.This capability permits a user to enter a number of differing customizedgreetings for a common calendar entry. This may be desirable, forexample, where a user wants to use different greetings for differentmodalities of communication (e.g., fields 604-620) and/or for differentsets of contactors (field 628). Thus, the user can customize greetingsfor different social media and different parameters associated with thesocial media postings.

When the user wishes to enter a further greeting, the first greetingshown in FIG. 6 is saved and the window 600 refreshed with a new windowhaving the various fields 604-628 blank. Depending on the configuration,the field 632 may be blank or contain the previously entered greeting inbox 632 for editing by the user.

An embodiment of a process or method 400 shows the operation of thegreeting selection agent 136 in FIG. 4. Generally, the method 400 beginswith a start operation 402 and terminates with an end operation 428.While a general order for the steps of the method 400 are shown in FIG.4, the method 400 can include more or fewer steps or arrange the orderof the steps differently than those shown in FIG. 4. The method 400 canbe executed as a set of computer-executable instructions executed by acomputer system and encoded or stored on a computer readable medium.Hereinafter, the method 400 shall be explained with reference to thesystems, components, modules, software, data structures, etc. describedin conjunction with FIGS. 1-2 and 5-6.

In step 404, the greeting selection agent 136 is notified when a contactis received for a first or selected user at a first time. The contactmay be a posting or content received from passive or active socialmedia. For example, the contact may be a posting to the user's Facebookpage. The posting may request a response (e.g., “Bill, would you be upfor golf this afternoon?”). In other embodiments, the posting may befrom an RSS feed (e.g., “Bill is the best person to talk about this.”).

When the incoming contact is a social media posting, the greetingselection agent 136, in step 408, queries the API 140 for customizedgreeting information, if any. The greeting selection agent 136 maydetermine if the user responds to the social media content (e.g., a usermay be on vacation but may still be able to access their social mediaand respond). If there is no response after a predetermined amount oftime (e.g., a day, an hour, etc.), an out-of-office message may beformulated and sent after a specified amount of time passes without aresponse by the recipient of the message.

The query to the API 140 includes one or more of the following, but isnot limited to, the identity of the first user or messaged user socialmedia network 108, the identity of the sender, the timestamp of themessage (e.g., when the message was received), the type of incomingmessage (e.g., internal email, external email, and instant message), theamount of trust for the sender, the degrees of separation from thesender, the type of venue of the social media, and other parameters ofthe social media posting. Thus, the API 140 can return any informationabout the social media, the poster, or the posting that is available.The information returned may be provided by the social media gateway 150either automatically or returned in response to a request from the API140. In alternative embodiments, some or all of the informationassociated with the social media may be stored in the database 120 andnot required in the message exchange with the social media gateway 150.For example, the type of venue for the social media (e.g., Facebook issemi-private, a blog is public, etc.) may be stored in the database 120because this information does not change regardless of the posting.

The API 140 accesses the user database 120 and determines whether theidentified user has an active calendar entry covering the period of thetimestamp, and, if so, whether the first user has entered a customizedgreeting. If so, the API 140 accesses the user database 120 to determinewhether the customized greeting is to be used for the poster, the venue,the social media type, etc. The API 140 returns a response including anindicator whether a customized greeting is to be used and, if so, apointer to the storage location of the customized greeting.

In decision diamond 412, the greeting selection agent 136 determineswhether the response indicates whether a customized greeting is to beprovided. If so, step 412 proceeds YES to step 416 where the greetingselection agent 136 causes the appropriate customized greeting to beprovided to the contactor in step 416. If not, step 412 proceeds NO tostep 420 where the greeting selection agent 136 causes a defaultgreeting to be provided to the contactor in step 420.

In step 424, the pertinent greeting or message is directed to thecontactor. Here, the greeting may be posted to the social media site.For example, a non-specific response used for un-trusted persons or forpublic forums, such as, “I cannot respond at this time,” may be postedto a public forum. In another example, a more tailored message, such as,“Fred, I am in Hawaii right now, I will get back to you when I return onMonday,” may be used in private or semi-private forums, e.g., Facebook,with trusted contactors, e.g., friends or family, or people with a lowlevel of separation, e.g., one or two degrees.

In alternative embodiments, the message is directed to the contactor butthrough different media. A contactor may have a close relationship withthe user, e.g., trusted and with a low level of separation. However, theposting may have come from a public social media site. In thissituation, information about the contactor may be found in the user'sdatabase, such as the contactor's email address for a communicationdevice 110. An email with the greeting may be created and sent to thecommunication device 110. The greeting can refer to the posting, e.g.,“In reference to you blog posting on BizForum, I am in Hawaii right nowand will get back to you when I return on Monday.”

In still other alternative embodiments, a greeting may requireescalation. If the content or the contactor is deemed important, thegreeting selection agent 136 may inform the user of the posting. Forexample, if the content requests and immediate response, or if theperson is a family member who needs immediate attention, the greetingselection agent 136 may form an email or create a phone message greetingto send to the user's communication device. Thus, important messages arebrought to the user's attention rather than just respond with agreeting.

Another alternative embodiment can prevent duplicate greetings going tomultiple social media sites or to the same contactor. The social mediagateway 150 may aggregate several messages if the messages are deemed tobe the same or similar. For example, a single contactor may post twomessages, e.g., one on Facebook and one on MySpace, to the same user forthe same reason, e.g., “Hey buddy, want to play golf this weekend?” Themessage aggregator 208 can deem these messages to be related by thecontactor, the content, and the time of posting. Thus, the messages maybe grouped and sent to the messaging system 112 together. The greetingselection agent 136 can determine a greeting for the message. Instead ofsending the message to both social media sites 108, the greetingselection agent 136 may send one message to one of the social mediasites 108 using the social media gateway 150 and reference the otherposting. In other embodiments, the content may be similar and severalcontactors may be involved. The greeting selection agent 136 may stilldetermine that a single response is warranted. Further, a singlecontactor may post several successive messages over a period of time tothe same or multiple social media sites, e.g., “Hey buddy, want to playgolf this weekend?,” “Dude, what is the best driver on the market?,” and“Jill wants me to ask if you and Heather want to go on a picnic on the15^(th).” These repetitive messages may be deemed as related, althoughthe content may be different, and only one response is given to preventthe single contactor from receiving the same greeting multiple times.

A number of other variations and modifications can be used. Further, itwould be possible to provide for some features without providing others.

FIG. 7 illustrates a block diagram of a system 700 that may function asservers, computers, or other systems provided herein. The system 700includes one or more user computers 705, 710, and 715. The usercomputers 705, 710, and 715 may be general purpose personal computers(including, merely by way of example, personal computers, and/or laptopcomputers running various versions of Microsoft Corp.'s Windows™ and/orApple Corp.'s Macintosh™ operating systems) and/or workstation computersrunning any of a variety of commercially-available UNIX™ or UNIX-likeoperating systems. These user computers 705, 710, 715 may also have anyof a variety of applications, including for example, database clientand/or server applications, and web browser applications. Alternatively,the user computers 705, 710, and 715 may be any other electronic device,such as a thin-client computer, Internet-enabled mobile telephone,and/or personal digital assistant, capable of communicating via anetwork 720 and/or displaying and navigating web pages or other types ofelectronic documents. Although the exemplary system 700 is shown withthree user computers, any number of user computers may be supported.

System 700 further includes a network 720. The network 720 may can beany type of network familiar to those skilled in the art that cansupport data communications using any of a variety ofcommercially-available protocols, including without limitation SIP,TCP/IP, SNA, IPX, AppleTalk, and the like. Merely by way of example, thenetwork 720 maybe a local area network (“LAN”), such as an Ethernetnetwork, a Token-Ring network and/or the like; a wide-area network; avirtual network, including without limitation a virtual private network(“VPN”); the Internet; an intranet; an extranet; a public switchedtelephone network (“PSTN”); an infra-red network; a wireless network(e.g., a network operating under any of the IEEE 702.11 suite ofprotocols, the Bluetooth™ protocol known in the art, and/or any otherwireless protocol); and/or any combination of these and/or othernetworks. The network 720 may be the same or similar to network 107.

The system may also include one or more server computers 725, 730. Oneserver may be a web server 725, which may be used to process requestsfor web pages or other electronic documents from user computers 705,710, and 720. The web server can be running an operating systemincluding any of those discussed above, as well as anycommercially-available server operating systems. The web server 725 canalso run a variety of server applications, including SIP servers, HTTPservers, FTP servers, CGI servers, database servers, Java servers, andthe like. In some instances, the web server 725 may publish operationsavailable operations as one or more web services.

The system 700 may also include one or more file and or/applicationservers 730, which can, in addition to an operating system, include oneor more applications accessible by a client running on one or more ofthe user computers 705, 710, 715. The server(s) 730 may be one or moregeneral purpose computers capable of executing programs or scripts inresponse to the user computers 705, 710 and 715. As one example, theserver may execute one or more web applications. The web application maybe implemented as one or more scripts or programs written in anyprogramming language, such as Java™, C, C#™, or C++, and/or anyscripting language, such as Perl, Python, or TCL, as well ascombinations of any programming/scripting languages. The applicationserver(s) 730 may also include database servers, including withoutlimitation those commercially available from Oracle, Microsoft, Sybase™,IBM™ and the like, which can process requests from database clientsrunning on a user computer 705.

The web pages created by the web application server 730 may be forwardedto a user computer 705 via a web server 725. Similarly, the web server725 may be able to receive web page requests, web services invocations,and/or input data from a user computer 805 and can forward the web pagerequests and/or input data to the web application server 830. In furtherembodiments, the server 730 may function as a file server. Although forease of description, FIG. 7 illustrates a separate web server 725 andfile/application server 730, those skilled in the art will recognizethat the functions described with respect to servers 725, 730 may beperformed by a single server and/or a plurality of specialized servers,depending on implementation-specific needs and parameters. The computersystems 705, 710, and 715, file server 725 and/or application server 730may function as the system, devices, or components described in FIGS.1-2.

The system 700 may also include a database 735. The database 735 mayreside in a variety of locations. By way of example, database 735 mayreside on a storage medium local to (and/or resident in) one or more ofthe computers 705, 710, 715, 725, 730. Alternatively, it may be remotefrom any or all of the computers 705, 710, 715, 725, 730, and incommunication (e.g., via the network 720) with one or more of these. Ina particular set of embodiments, the database 735 may reside in astorage-area network (“SAN”) familiar to those skilled in the art.Similarly, any necessary files for performing the functions attributedto the computers 705, 710, 715, 725, 730 may be stored locally on therespective computer and/or remotely, as appropriate. In one set ofembodiments, the database 735 may be a relational database, such asOracle 10i™, that is adapted to store, update, and retrieve data inresponse to SQL-formatted commands.

FIG. 8 illustrates one embodiment of a computer system 800 upon whichthe servers, computers, or other systems or components described hereinmay be deployed or executed. The computer system 800 is shown comprisinghardware elements that may be electrically coupled via a bus 855. Thehardware elements may include one or more central processing units(CPUs) 805; one or more input devices 810 (e.g., a mouse, a keyboard,etc.); and one or more output devices 815 (e.g., a display device, aprinter, etc.). The computer system 800 may also include one or morestorage devices 820. By way of example, storage device(s) 820 may bedisk drives, optical storage devices, solid-state storage devices suchas a random access memory (“RAM”) and/or a read-only memory (“ROM”),which can be programmable, flash-updateable and/or the like.

The computer system 800 may additionally include a computer-readablestorage media reader 825; a communications system 830 (e.g., a modem, anetwork card (wireless or wired), an infra-red communication device,etc.); and working memory 840, which may include RAM and ROM devices asdescribed above. In some embodiments, the computer system 800 may alsoinclude a processing acceleration unit 835, which can include a DSP, aspecial-purpose processor, and/or the like.

The computer-readable storage media reader 825 can further be connectedto a computer-readable storage medium, together (and, optionally, incombination with storage device(s) 820) comprehensively representingremote, local, fixed, and/or removable storage devices plus storagemedia for temporarily and/or more permanently containingcomputer-readable information. The communications system 830 may permitdata to be exchanged with the network 820 and/or any other computerdescribed above with respect to the system 800. Moreover, as disclosedherein, the term “storage medium” may represent one or more devices forstoring data, including read only memory (ROM), random access memory(RAM), magnetic RAM, core memory, magnetic disk storage mediums, opticalstorage mediums, flash memory devices and/or other machine readablemediums for storing information.

The computer system 800 may also comprise software elements, shown asbeing currently located within a working memory 840, including anoperating system 845 and/or other code 850, such as program codeimplementing the ancillary server 300. It should be appreciated thatalternate embodiments of a computer system 800 may have numerousvariations from that described above. For example, customized hardwaremight also be used and/or particular elements might be implemented inhardware, software (including portable software, such as applets), orboth. Further, connection to other computing devices such as networkinput/output devices may be employed.

In the foregoing description, for the purposes of illustration, methodswere described in a particular order. It should be appreciated that inalternate embodiments, the methods may be performed in a different orderthan that described. It should also be appreciated that the methodsdescribed above may be performed by hardware components or may beembodied in sequences of machine-executable instructions, which may beused to cause a machine, such as a general-purpose or special-purposeprocessor or logic circuits programmed with the instructions to performthe methods. These machine-executable instructions may be stored on oneor more machine readable mediums, such as CD-ROMs or other type ofoptical disks, floppy diskettes, ROMs, RAMs, EPROMs, EEPROMs, magneticor optical cards, flash memory, or other types of machine-readablemediums suitable for storing electronic instructions. Alternatively, themethods may be performed by a combination of hardware and software.

Specific details were given in the description to provide a thoroughunderstanding of the embodiments. However, it will be understood by oneof ordinary skill in the art that the embodiments may be practicedwithout these specific details. For example, circuits may be shown inblock diagrams in order not to obscure the embodiments in unnecessarydetail. In other instances, well-known circuits, processes, algorithms,structures, and techniques may be shown without unnecessary detail inorder to avoid obscuring the embodiments.

Also, it is noted that the embodiments were described as a process whichis depicted as a flowchart, a flow diagram, a data flow diagram, astructure diagram, or a block diagram. Although a flowchart may describethe operations as a sequential process, many of the operations can beperformed in parallel or concurrently. In addition, the order of theoperations may be re-arranged. A process is terminated when itsoperations are completed, but could have additional steps not includedin the figure. A process may correspond to a method, a function, aprocedure, a subroutine, a subprogram, etc. When a process correspondsto a function, its termination corresponds to a return of the functionto the calling function or the main function.

Furthermore, embodiments may be implemented by hardware, software,firmware, middleware, microcode, hardware description languages, or anycombination thereof. When implemented in software, firmware, middlewareor microcode, the program code or code segments to perform the necessarytasks may be stored in a machine readable medium such as storage medium.A processor(s) may perform the necessary tasks. A code segment mayrepresent a procedure, a function, a subprogram, a program, a routine, asubroutine, a module, a software package, a class, or any combination ofinstructions, data structures, or program statements. A code segment maybe coupled to another code segment or a hardware circuit by passingand/or receiving information, data, arguments, parameters, or memorycontents. Information, arguments, parameters, data, etc. may be passed,forwarded, or transmitted via any suitable means including memorysharing, message passing, token passing, network transmission, etc.

While illustrative embodiments of the invention have been described indetail herein, it is to be understood that the inventive concepts may beotherwise variously embodied and employed, and that the appended claimsare intended to be construed to include such variations, except aslimited by the prior art.

What is claimed is:
 1. A method for providing greetings to social mediacontent, the method comprising: a processor scanning a first socialmedia network for first content directed to a user, wherein the firstsocial media network is a passive social media network; the processorreceiving the first content from the first social media network, whereinthe first content includes a first timestamp, a first venue, and acontactor of a first type; the processor determining, from an electroniccalendar, that the user has a first electronic calendar entry indicatingthat the user is unavailable at the time of the first timestamp, whereina first customized greeting, created by the user, is associated with thefirst electronic calendar entry, wherein the first customized greetingcreated by the user is specific to the first electronic calendar entry;the processor determining the first venue and the first type; based onthe first venue and the first type, the processor retrieving the firstcustomized greeting created by the user; the processor automaticallyproviding the first customized greeting created by the user to thecontactor; the processor receiving second content from a second socialmedia network directed to the user; the processor determining that thefirst content and the second content are both from the contactor; theprocessor determining that the first content and the second content arerelated; and in response to determining that the first content and thesecond content are related and both from the contactor, the processorposting the first customized greeting created by the user on the firstsocial media network and in response to determining that the firstcontent and the second content are related and both from the contactor,the processor not posting the first customized greeting created by theuser on the second social media network, wherein the posted firstcustomized greeting created by the user on the first social medianetwork also references the second content from the second social medianetwork.
 2. The method as defined in claim 1, wherein the first typeincludes a degree of separation.
 3. The method as defined in claim 2,wherein providing the first customized greeting created by the user tothe contactor includes one of a group consisting of: posting the firstcustomized greeting created by the user to the first social medianetwork; and sending a message to a communication device associated withthe contactor.
 4. The method as defined in claim 3, wherein sending themessage to the communication device associated with the contactorincludes sending the message through a different media and furthercomprising one of a group consisting of: sending a text message to aninstant message alias associated with the contactor; and sending anemail to the contactor.
 5. The method as defined in claim 4, furthercomprising: the processor receiving, from the second contactor and atthe second social media network, a third content for the user, the thirdcontent having a second timestamp and a second venue, wherein the secondcontactor is of a second type; the processor determining, from theelectronic calendar, that the user has the first electronic calendarentry indicating that the user is unavailable at the time of the secondtimestamp; the processor determining the second venue and the secondtype for the third content; based on the second venue and the secondtype of the third content, the processor retrieving a second customizedgreeting associated with the first electronic calendar entry; theprocessor providing the second customized greeting to the secondcontactor; and wherein the first customized greeting and the secondcustomized greeting are different and wherein the first type and secondtype are based on information obtained from the first social medianetwork and the second social media network.
 6. The method as defined inclaim 1, wherein the first customized greeting created by the user thatis provided to the contactor is used for multiple calendar entries basedon a recurrence selection by the user.
 7. The method as defined in claim1, further comprising the steps of: receiving third content from thesecond social media network directed to the user; determining that thefirst content and the third content are both from the contactor;determining that the first social media network is public and the secondsocial media network is private; and in response to determining that thefirst social media network is public and the second social media networkis private, posting the first customized greeting created by the user onthe first social media network and posting a different customizedgreeting on the second social media network.
 8. The method of claim 1,wherein the posted first greeting created by the user on the firstsocial media network is directed to a user that posted the first contenton the first social media site.
 9. A non-transitory computer readablemedium having stored thereon instructions that cause a computing systemto execute a method for creating customized greetings for social mediacontent, the instructions comprising: instructions to scan a firstsocial media network for the social media content directed to a user,wherein the first social media network is a passive social medianetwork; instructions to receive a calendar entry; instructions toassociate a first customized greeting with the calendar entry, whereinthe first customized greeting is created by the user specific to thecalendar entry; instructions to receive a first parameter associatedwith the first customized greeting created by the user, wherein thefirst parameter identifies the first customized greeting created by theuser as a reply to the social media content; instructions to associatethe first parameter with the first customized greeting created by theuser; and instructions to store the first customized greeting created bythe user; instructions receive second content from a second social medianetwork directed to the user; instructions to determine that the firstcontent and the second content are both from the contactor; instructionsto determine that the first content and the second content are related;and in response to determining that the first content and the secondcontent are related and both from the contactor, instructions to postthe first customized greeting created by the user on the first socialmedia network and in response to determining that the first content andthe second content are related and both from the contactor, theinstructions to not post the first customized greeting created by theuser on the second social media network, wherein the posted firstcustomized greeting created by the user on the first social medianetwork also references the second content from the second social medianetwork.
 10. The computer readable medium as defined in claim 9, whereinthe first parameter is a selection of one of a blog, a micro blog, or avideo blog as a source of the social media content.
 11. The computerreadable medium as defined in claim 10, further comprising: instructionsto receive a second parameter associated with the first customizedgreeting created by the user, wherein the second parameter identifies atype of contactor; instructions to associate the second parameter withthe first customized greeting created by the user.
 12. The computerreadable medium as defined in claim 11, wherein the type of contactorincludes one of a friend, a family, external to an organization,internal to an organization, a degree of separation, a trust level, acustomer, or a business associate.
 13. The computer readable medium asdefined in claim 10, further comprising: instructions to receive a thirdparameter associated with the first customized greeting created by theuser, wherein the third parameter identifies a venue; instructions toassociate the third parameter with the first customized greeting createdby the user.
 14. The computer readable medium as defined in claim 11,wherein venue includes one of private, public, or semi-private.
 15. Acommunication system comprising: a social media gateway including aprocessor in communication with a first social media network, the socialmedia gateway operable to: scan the first social media network for firstcontent directed to a user, wherein the first social media network is apassive social media network; receive the first content from the firstsocial media network, wherein the first content includes a contactorposting a first contact to the first social media network for the user;post a first greeting created by the user onto the first social medianetwork in reply to the first contact receive second content from asecond social media network directed to the user; determine that thefirst content and the second content are both from the contactor;determine that the first content and the second content are related; andin response to determining that the first content and the second contentare related and both from the contactor, post the first greeting createdby the user on the first social media network and in response todetermining that the first content and the second content are relatedand both from the contactor, not posting the first greeting created bythe user on the second social media network, wherein the posted firstgreeting created by the user on the first social media network alsoreferences the second content from the second social media network; amessaging system in communication with the social media gateway, themessaging system operable to: access an electronic calendar; determine,from the electronic calendar, that the user has an electronic calendarentry indicating that the user is unavailable; determine a greetingassociated with the electronic calendar entry, wherein the greetingassociated with the electronic calendar entry is specific to theelectronic calendar entry; retrieve the greeting associated with theelectronic calendar; and provide the greeting associated with theelectronic calendar to the social media gateway.
 16. The communicationsystem as defined in claim 15, wherein the social media gateway isfurther operable to: filter content received from the social mediagateway based on at least one of a keyword or a contactor; translate thecontent from the social media gateway; and aggregate one or morecontacts from the social media gateway.
 17. The communication system asdefined in claim 16, wherein the social media gateway is furtheroperable to: obtain a parameter about the first content from the firstsocial media network; provide the parameter to the messaging system;wherein the first greeting is a customized greeting, and the messagingsystem further operable to determine the customized greeting based onthe parameter.
 18. The communication system as defined in claim 17,wherein the messaging system further operable to: determine, from theparameter, that the content requires escalation; and in response to theescalation, directly contacting the user about the content.